// Copyright 2017 by caixw, All rights reserved.
// Use of this source code is governed by a MIT
// license that can be found in the LICENSE file.

package apis

import "net/http"

func init() {
	github.init()
}

// https://developer.github.com/v3/
var github = &Collection{
	ID:   "github",
	Name: "Github API",
	Desc: "模仿 Github 的 API 定义，数量中等、命名合理，符合一般情况下的需求。",
	APIS: []*API{
		{Method: http.MethodGet, Brace: "/events"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/events"},
		{Method: http.MethodGet, Brace: "/networks/{owner}/{repo}/events"},
		{Method: http.MethodGet, Brace: "/orgs/{org}/events"},
		{Method: http.MethodGet, Brace: "/users/{username}/received_events"},
		{Method: http.MethodGet, Brace: "/users/{username}/received_events/public"},
		{Method: http.MethodGet, Brace: "/users/{username}/events"},
		{Method: http.MethodGet, Brace: "/users/{username}/events/public"},
		{Method: http.MethodGet, Brace: "/users/{username}/events/orgs/{org}"},
		{Method: http.MethodGet, Brace: "/feeds"},
		{Method: http.MethodGet, Brace: "/notifications"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/notifications"},
		{Method: http.MethodPut, Brace: "/notifications"},
		{Method: http.MethodGet, Brace: "/notifications/threads/{id}"},
		{Method: http.MethodPatch, Brace: "/notifications/threads/{id}"},
		{Method: http.MethodGet, Brace: "/notifications/threads/{id}/subscription"},
		{Method: http.MethodPut, Brace: "/notifications/threads/{id}/subscription"},
		{Method: http.MethodDelete, Brace: "/notifications/threads/{id}/subscription"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/stargazers"},
		{Method: http.MethodGet, Brace: "/users/{username}/starred"},
		{Method: http.MethodGet, Brace: "/user/starred"},
		{Method: http.MethodGet, Brace: "/user/starred/{owner}/{repo}"},
		{Method: http.MethodPut, Brace: "/user/starred/{owner}/{repo}"},
		{Method: http.MethodDelete, Brace: "/user/starred/{owner}/{repo}"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/subscribers"},
		{Method: http.MethodGet, Brace: "/users/{username}/subscriptions"},
		{Method: http.MethodGet, Brace: "/user/subscriptions"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/subscription"},
		{Method: http.MethodPut, Brace: "/repos/{owner}/{repo}/subscription"},
		{Method: http.MethodDelete, Brace: "/repos/{owner}/{repo}/subscription"},
		{Method: http.MethodGet, Brace: "/user/subscriptions/{owner}/{repo}"},
		{Method: http.MethodPut, Brace: "/user/subscriptions/{owner}/{repo}"},
		{Method: http.MethodDelete, Brace: "/user/subscriptions/{owner}/{repo}"},

		{Method: http.MethodGet, Brace: "/gists/{gist_id}/comments"},
		{Method: http.MethodGet, Brace: "/gists/{gist_id}/comments/{id}"},
		{Method: http.MethodPost, Brace: "/gists/{gist_id}/comments"},
		{Method: http.MethodPatch, Brace: "/gists/{gist_id}/comments/{id}"},
		{Method: http.MethodDelete, Brace: "/gists/{gist_id}/comments/{id}"},

		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/git/blobs/{sha}"},
		{Method: http.MethodPost, Brace: "/repos/{owner}/{repo}/git/blobs"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/git/commits/{sha}"},
		{Method: http.MethodPost, Brace: "/repos/{owner}/{repo}/git/commits"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/git/refs/{ref}"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/git/refs/heads/feature"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/git/refs"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/git/refs/tags"},
		{Method: http.MethodPost, Brace: "/repos/{owner}/{repo}/git/refs"},
		{Method: http.MethodPatch, Brace: "/repos/{owner}/{repo}/git/refs/{ref}"},
		{Method: http.MethodDelete, Brace: "/repos/{owner}/{repo}/git/refs/{ref}"},

		{Method: http.MethodPost, Brace: "/repos/{owner}/{repo}/git/tags"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/git/tags/{sha}"},

		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/git/trees/{sha}"},
		{Method: http.MethodPost, Brace: "/repos/{owner}/{repo}/git/trees"},

		{Method: http.MethodGet, Brace: "/integration/installations"},
		{Method: http.MethodGet, Brace: "/integration/installations/{installation_id}"},
		{Method: http.MethodGet, Brace: "/user/installations"},
		{Method: http.MethodPost, Brace: "/installations/{installation_id}/access_tokens"},
		{Method: http.MethodGet, Brace: "/installation/repositories"},
		{Method: http.MethodGet, Brace: "/user/installations/{installation_id}/repositories"},
		{Method: http.MethodPut, Brace: "/installations/{installation_id}/repositories/{repo}sitory_id"},
		{Method: http.MethodDelete, Brace: "/installations/{installation_id}/repositories/{repo}sitory_id"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/assignees"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/assignees/{assignee}"},
		{Method: http.MethodPost, Brace: "/repos/{owner}/{repo}/issues/{number}/assignees"},
		{Method: http.MethodDelete, Brace: "/repos/{owner}/{repo}/issues/{number}/assignees"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/issues/{number}/comments"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/issues/comments"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/issues/comments/{id}"},
		{Method: http.MethodPost, Brace: "/repos/{owner}/{repo}/issues/{number}/comments"},
		{Method: http.MethodPatch, Brace: "/repos/{owner}/{repo}/issues/comments/{id}"},
		{Method: http.MethodDelete, Brace: "/repos/{owner}/{repo}/issues/comments/{id}"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/issues/{issue_number}/events"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/issues/events"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/issues/events/{id}"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/labels"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/labels/{name}"},
		{Method: http.MethodPost, Brace: "/repos/{owner}/{repo}/labels"},
		{Method: http.MethodPatch, Brace: "/repos/{owner}/{repo}/labels/{name}"},
		{Method: http.MethodDelete, Brace: "/repos/{owner}/{repo}/labels/{name}"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/issues/{number}/labels"},
		{Method: http.MethodPost, Brace: "/repos/{owner}/{repo}/issues/{number}/labels"},
		{Method: http.MethodDelete, Brace: "/repos/{owner}/{repo}/issues/{number}/labels/{name}"},
		{Method: http.MethodPut, Brace: "/repos/{owner}/{repo}/issues/{number}/labels"},
		{Method: http.MethodDelete, Brace: "/repos/{owner}/{repo}/issues/{number}/labels"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/milestones/{number}/labels"},

		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/milestones"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/milestones/{number}"},
		{Method: http.MethodPost, Brace: "/repos/{owner}/{repo}/milestones"},
		{Method: http.MethodPatch, Brace: "/repos/{owner}/{repo}/milestones/{number}"},
		{Method: http.MethodDelete, Brace: "/repos/{owner}/{repo}/milestones/{number}"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/issues/{issue_number}/timeline"},

		{Method: http.MethodPost, Brace: "/orgs/{org}/migrations"},
		{Method: http.MethodGet, Brace: "/orgs/{org}/migrations"},
		{Method: http.MethodGet, Brace: "/orgs/{org}/migrations/{id}"},
		{Method: http.MethodGet, Brace: "/orgs/{org}/migrations/{id}/archive"},
		{Method: http.MethodDelete, Brace: "/orgs/{org}/migrations/{id}/archive"},
		{Method: http.MethodDelete, Brace: "/orgs/{org}/migrations/{id}/repos/{repo}_name/lock"},

		{Method: http.MethodPut, Brace: "/repos/{owner}/{repo}/import"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/import"},
		{Method: http.MethodPatch, Brace: "/repos/{owner}/{repo}/import"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/import/authors"},
		{Method: http.MethodPatch, Brace: "/repos/{owner}/{repo}/import/authors/{author_id}"},
		{Method: http.MethodPatch, Brace: "/{owner}/{name}/import/lfs"},
		{Method: http.MethodGet, Brace: "/{owner}/{name}/import/large_files"},
		{Method: http.MethodDelete, Brace: "/repos/{owner}/{repo}/import"},
		{Method: http.MethodGet, Brace: "/emojis"},
		{Method: http.MethodGet, Brace: "/gitignore/templates"},
		{Method: http.MethodGet, Brace: "/gitignore/templates/C"},

		// license
		{Method: http.MethodGet, Brace: "/licenses"},
		{Method: http.MethodGet, Brace: "/licenses/{license}"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/license"},

		{Method: http.MethodPost, Brace: "/markdown"},
		{Method: http.MethodPost, Brace: "/markdown/raw"},
		{Method: http.MethodGet, Brace: "/meta"},
		{Method: http.MethodGet, Brace: "/rate_limit"},

		{Method: http.MethodGet, Brace: "/orgs/{org}/members"},
		{Method: http.MethodGet, Brace: "/orgs/{org}/members/{username}"},
		{Method: http.MethodDelete, Brace: "/orgs/{org}/members/{username}"},
		{Method: http.MethodGet, Brace: "/orgs/{org}/public_members"},
		{Method: http.MethodGet, Brace: "/orgs/{org}/public_members/{username}"},
		{Method: http.MethodPut, Brace: "/orgs/{org}/public_members/{username}"},
		{Method: http.MethodDelete, Brace: "/orgs/{org}/public_members/{username}"},
		{Method: http.MethodGet, Brace: "/orgs/{org}/memberships/{username}"},
		{Method: http.MethodPut, Brace: "/orgs/{org}/memberships/{username}"},
		{Method: http.MethodDelete, Brace: "/orgs/{org}/memberships/{username}"},
		{Method: http.MethodGet, Brace: "/orgs/{org}/invitations"},
		{Method: http.MethodGet, Brace: "/user/memberships/orgs"},
		{Method: http.MethodGet, Brace: "/user/memberships/orgs/{org}"},
		{Method: http.MethodPatch, Brace: "/user/memberships/orgs/{org}"},

		{Method: http.MethodGet, Brace: "/orgs/{org}/outside_collaborators"},
		{Method: http.MethodDelete, Brace: "/orgs/{org}/outside_collaborators/{username}"},
		{Method: http.MethodPut, Brace: "/orgs/{org}/outside_collaborators/{username}"},

		{Method: http.MethodGet, Brace: "/orgs/{org}/teams"},
		{Method: http.MethodGet, Brace: "/teams/{id}"},
		{Method: http.MethodPost, Brace: "/orgs/{org}/teams"},
		{Method: http.MethodPatch, Brace: "/teams/{id}"},
		{Method: http.MethodDelete, Brace: "/teams/{id}"},
		{Method: http.MethodGet, Brace: "/teams/{id}/members/{username}"},
		{Method: http.MethodPut, Brace: "/teams/{id}/members/{username}"},
		{Method: http.MethodDelete, Brace: "/teams/{id}/members/{username}"},
		{Method: http.MethodGet, Brace: "/teams/{id}/memberships/{username}"},
		{Method: http.MethodPut, Brace: "/teams/{id}/memberships/{username}"},
		{Method: http.MethodDelete, Brace: "/teams/{id}/memberships/{username}"},
		{Method: http.MethodGet, Brace: "/teams/{id}/repos"},
		{Method: http.MethodGet, Brace: "/teams/{id}/invitations"},
		//{Method: http.MethodGet, Brace: "/teams/{id}/repos/{owner}/{repo}"},
		{Method: http.MethodPut, Brace: "/teams/{id}/repos/{org}/{repo}"},
		//{Method: http.MethodDelete, Brace: "/teams/{id}/repos/{owner}/{repo}"},
		{Method: http.MethodGet, Brace: "/orgs/{org}/hooks"},
		{Method: http.MethodGet, Brace: "/orgs/{org}/hooks/{id}"},
		{Method: http.MethodPost, Brace: "/orgs/{org}/hooks"},
		{Method: http.MethodPatch, Brace: "/orgs/{org}/hooks/{id}"},
		{Method: http.MethodPost, Brace: "/orgs/{org}/hooks/{id}/pings"},
		{Method: http.MethodDelete, Brace: "/orgs/{org}/hooks/{id}"},
		{Method: http.MethodGet, Brace: "/orgs/{org}/blocks"},
		{Method: http.MethodGet, Brace: "/orgs/{org}/blocks/{username}"},
		{Method: http.MethodPut, Brace: "/orgs/{org}/blocks/{username}"},
		{Method: http.MethodDelete, Brace: "/orgs/{org}/blocks/{username}"},

		{Method: http.MethodGet, Brace: "/projects/columns/{column_id}/cards"},
		{Method: http.MethodGet, Brace: "/projects/columns/cards/{id}"},
		{Method: http.MethodPost, Brace: "/projects/columns/{column_id}/cards"},
		{Method: http.MethodPatch, Brace: "/projects/columns/cards/{id}"},
		{Method: http.MethodDelete, Brace: "/projects/columns/cards/{id}"},
		{Method: http.MethodPost, Brace: "/projects/columns/cards/{id}/moves"},

		{Method: http.MethodGet, Brace: "/projects/{project_id}/columns"},
		{Method: http.MethodPost, Brace: "/projects/{project_id}/columns"},
		{Method: http.MethodDelete, Brace: "/projects/columns/{id}"},
		{Method: http.MethodPost, Brace: "/projects/columns/{id}/moves"},

		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/pulls/{number}/reviews"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/pulls/{number}/reviews/{id}"},
		{Method: http.MethodDelete, Brace: "/repos/{owner}/{repo}/pulls/{number}/reviews/{id}"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/pulls/{number}/reviews/{id}/comments"},
		{Method: http.MethodPost, Brace: "/repos/{owner}/{repo}/pulls/{number}/reviews"},
		{Method: http.MethodPost, Brace: "/repos/{owner}/{repo}/pulls/{number}/reviews/{id}/events"},
		{Method: http.MethodPut, Brace: "/repos/{owner}/{repo}/pulls/{number}/reviews/{id}/dismissals"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/pulls/{number}/comments"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/pulls/comments"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/pulls/comments/{id}"},
		{Method: http.MethodPost, Brace: "/repos/{owner}/{repo}/pulls/{number}/comments"},
		{Method: http.MethodPatch, Brace: "/repos/{owner}/{repo}/pulls/comments/{id}"},
		{Method: http.MethodDelete, Brace: "/repos/{owner}/{repo}/pulls/comments/{id}"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/pulls/{number}/requested_reviewers"},
		{Method: http.MethodPost, Brace: "/repos/{owner}/{repo}/pulls/{number}/requested_reviewers"},
		{Method: http.MethodDelete, Brace: "/repos/{owner}/{repo}/pulls/{number}/requested_reviewers"},

		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/comments/{id}/reactions"},
		{Method: http.MethodPost, Brace: "/repos/{owner}/{repo}/comments/{id}/reactions"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/issues/{number}/reactions"},
		{Method: http.MethodPost, Brace: "/repos/{owner}/{repo}/issues/{number}/reactions"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/issues/comments/{id}/reactions"},
		{Method: http.MethodPost, Brace: "/repos/{owner}/{repo}/issues/comments/{id}/reactions"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/pulls/comments/{id}/reactions"},
		{Method: http.MethodPost, Brace: "/repos/{owner}/{repo}/pulls/comments/{id}/reactions"},
		{Method: http.MethodDelete, Brace: "/reactions/{id}"},

		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/branches"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/branches/{branch}"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/branches/{branch}/protection"},
		{Method: http.MethodPut, Brace: "/repos/{owner}/{repo}/branches/{branch}/protection"},
		{Method: http.MethodDelete, Brace: "/repos/{owner}/{repo}/branches/{branch}/protection"},
		{Method: http.MethodPatch, Brace: "/repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"},
		{Method: http.MethodDelete, Brace: "/repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts"},
		{Method: http.MethodPut, Brace: "/repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts"},
		{Method: http.MethodPost, Brace: "/repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts"},
		{Method: http.MethodDelete, Brace: "/repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"},
		{Method: http.MethodPatch, Brace: "/repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"},
		{Method: http.MethodDelete, Brace: "/repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"},
		{Method: http.MethodPost, Brace: "/repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"},
		{Method: http.MethodDelete, Brace: "/repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"},
		{Method: http.MethodDelete, Brace: "/repos/{owner}/{repo}/branches/{branch}/protection/restrictions"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams"},
		{Method: http.MethodPut, Brace: "/repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams"},
		{Method: http.MethodPost, Brace: "/repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams"},
		{Method: http.MethodDelete, Brace: "/repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users"},
		{Method: http.MethodPut, Brace: "/repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users"},
		{Method: http.MethodPost, Brace: "/repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users"},
		{Method: http.MethodDelete, Brace: "/repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/collaborators/{username}"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/collaborators/{username}/permission"},
		{Method: http.MethodPut, Brace: "/repos/{owner}/{repo}/collaborators/{username}"},
		{Method: http.MethodDelete, Brace: "/repos/{owner}/{repo}/collaborators/{username}"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/comments"},
		{Method: http.MethodPost, Brace: "/repos/{owner}/{repo}/commits/{sha}/comments"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/comments/{id}"},
		{Method: http.MethodPatch, Brace: "/repos/{owner}/{repo}/comments/{id}"},
		{Method: http.MethodDelete, Brace: "/repos/{owner}/{repo}/comments/{id}"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{name}/community/profile"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/commits"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/commits/{sha}"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/compare/{base}...{head}"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/readme"},
		{Method: http.MethodPut, Brace: "/repos/{owner}/{repo}/contents/{path}"},
		{Method: http.MethodDelete, Brace: "/repos/{owner}/{repo}/contents/{path}"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/{archive_format}/{ref}"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/keys"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/keys/{id}"},
		{Method: http.MethodPost, Brace: "/repos/{owner}/{repo}/keys"},
		{Method: http.MethodDelete, Brace: "/repos/{owner}/{repo}/keys/{id}"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/deployments"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/deployments/{deployment_id}"},
		{Method: http.MethodPost, Brace: "/repos/{owner}/{repo}/deployments"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/deployments/{id}/statuses"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/deployments/{id}/statuses/{status_id}"},
		{Method: http.MethodPost, Brace: "/repos/{owner}/{repo}/deployments/{id}/statuses"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/downloads"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/downloads/{id}"},
		{Method: http.MethodDelete, Brace: "/repos/{owner}/{repo}/downloads/{id}"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/forks"},
		{Method: http.MethodPost, Brace: "/repos/{owner}/{repo}/forks"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/invitations"},
		{Method: http.MethodDelete, Brace: "/repos/{owner}/{repo}/invitations/{invitation_id}"},
		{Method: http.MethodPatch, Brace: "/repos/{owner}/{repo}/invitations/{invitation_id}"},
		{Method: http.MethodGet, Brace: "/user/repository_invitations"},
		{Method: http.MethodPatch, Brace: "/user/repository_invitations/{invitation_id}"},
		{Method: http.MethodDelete, Brace: "/user/repository_invitations/{invitation_id}"},
		{Method: http.MethodPost, Brace: "/repos/{owner}/{repo}/merges"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/pages"},
		{Method: http.MethodPost, Brace: "/repos/{owner}/{repo}/pages/builds"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/pages/builds/{id}"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/pages/builds/latest"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/releases"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/releases/{id}"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/releases/latest"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/releases/tags/{tag}"},
		{Method: http.MethodPost, Brace: "/repos/{owner}/{repo}/releases"},
		{Method: http.MethodDelete, Brace: "/repos/{owner}/{repo}/releases/{id}"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/releases/{id}/assets"},
		{Method: http.MethodPatch, Brace: "/repos/{owner}/{repo}/releases/assets/{id}"},
		{Method: http.MethodDelete, Brace: "/repos/{owner}/{repo}/releases/assets/{id}"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/stats/contributors"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/stats/commit_activity"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/stats/code_frequency"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/stats/participation"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/stats/punch_card"},
		{Method: http.MethodPost, Brace: "/repos/{owner}/{repo}/statuses/{sha}"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/commits/{ref}/statuses"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/commits/{ref}/status"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/traffic/popular/referrers"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/traffic/popular/paths"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/traffic/views"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/traffic/clones"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/hooks"},
		{Method: http.MethodGet, Brace: "/repos/{owner}/{repo}/hooks/{id}"},
		{Method: http.MethodPost, Brace: "/repos/{owner}/{repo}/hooks"},
		{Method: http.MethodPatch, Brace: "/repos/{owner}/{repo}/hooks/{id}"},
		{Method: http.MethodPost, Brace: "/repos/{owner}/{repo}/hooks/{id}/tests"},
		{Method: http.MethodDelete, Brace: "/repos/{owner}/{repo}/hooks/{id}"},
		{Method: http.MethodGet, Brace: "/search/repositories"},
		{Method: http.MethodGet, Brace: "/search/commits"},
		{Method: http.MethodGet, Brace: "/search/code"},
		{Method: http.MethodGet, Brace: "/search/issues"},
		{Method: http.MethodGet, Brace: "/search/users"},

		{Method: http.MethodGet, Brace: "/user/emails"},
		{Method: http.MethodGet, Brace: "/user/public_emails"},
		{Method: http.MethodPost, Brace: "/user/emails"},
		{Method: http.MethodDelete, Brace: "/user/emails"},
		{Method: http.MethodGet, Brace: "/users/{username}/followers"},
		{Method: http.MethodGet, Brace: "/user/followers"},
		{Method: http.MethodGet, Brace: "/users/{username}/following"},
		{Method: http.MethodGet, Brace: "/user/following"},
		{Method: http.MethodGet, Brace: "/user/following/{username}"},
		{Method: http.MethodPut, Brace: "/user/following/{username}"},
		{Method: http.MethodDelete, Brace: "/user/following/{username}"},
		{Method: http.MethodGet, Brace: "/users/{username}/keys"},
		{Method: http.MethodGet, Brace: "/user/keys"},
		{Method: http.MethodGet, Brace: "/user/keys/{id}"},
		{Method: http.MethodPost, Brace: "/user/keys"},
		{Method: http.MethodDelete, Brace: "/user/keys/{id}"},
		{Method: http.MethodGet, Brace: "/users/{username}/gpg_keys"},
		{Method: http.MethodGet, Brace: "/user/gpg_keys"},
		{Method: http.MethodGet, Brace: "/user/gpg_keys/{id}"},
		{Method: http.MethodPost, Brace: "/user/gpg_keys"},
		{Method: http.MethodDelete, Brace: "/user/gpg_keys/{id}"},
		{Method: http.MethodGet, Brace: "/user/blocks"},
		{Method: http.MethodGet, Brace: "/user/blocks/{username}"},
		{Method: http.MethodPut, Brace: "/user/blocks/{username}"},
		{Method: http.MethodDelete, Brace: "/user/blocks/{username}"},

		{Method: http.MethodGet, Brace: "/enterprise/stats/{type}"},
		{Method: http.MethodPatch, Brace: "/admin/ldap/users/{username}/mapping"},
		{Method: http.MethodPost, Brace: "/admin/ldap/users/{username}/sync"},
		{Method: http.MethodPatch, Brace: "/admin/ldap/teams/{team_id}/mapping"},
		{Method: http.MethodPost, Brace: "/admin/ldap/teams/{team_id}/sync"},
		{Method: http.MethodGet, Brace: "/enterprise/settings/license"},
		{Method: http.MethodPost, Brace: "/setup/api/start"},
		{Method: http.MethodPost, Brace: "/setup/api/upgrade"},
		{Method: http.MethodGet, Brace: "/setup/api/configcheck"},
		{Method: http.MethodPost, Brace: "/setup/api/configure"},
		{Method: http.MethodGet, Brace: "/setup/api/settings"},
		{Method: http.MethodPut, Brace: "/setup/api/settings"},
		{Method: http.MethodGet, Brace: "/setup/api/maintenance"},
		{Method: http.MethodPost, Brace: "/setup/api/maintenance"},
		{Method: http.MethodGet, Brace: "/setup/api/settings/authorized-keys"},
		{Method: http.MethodPost, Brace: "/setup/api/settings/authorized-keys"},
		{Method: http.MethodDelete, Brace: "/setup/api/settings/authorized-keys"},
		{Method: http.MethodGet, Brace: "/admin/pre-receive-environments/{id}"},
		{Method: http.MethodPost, Brace: "/admin/pre_receive_environments"},
		{Method: http.MethodPatch, Brace: "/admin/pre_receive_environments/{id}"},
		{Method: http.MethodDelete, Brace: "/admin/pre_receive_environments/{id}"},
		{Method: http.MethodGet, Brace: "/admin/pre-receive-environments/{id}/downloads/latest"},
		{Method: http.MethodPost, Brace: "/admin/pre_receive_environments/{id}/downloads"},
		{Method: http.MethodGet, Brace: "/admin/pre-receive-hooks/{id}"},
		{Method: http.MethodGet, Brace: "/admin/pre-receive-hooks"},
		{Method: http.MethodPost, Brace: "/admin/pre-receive-hooks"},
		{Method: http.MethodPatch, Brace: "/admin/pre_receive_hooks/{id}"},
		{Method: http.MethodDelete, Brace: "/admin/pre_receive_hooks/{id}"},
		{Method: http.MethodPost, Brace: "/staff/indexing_jobs"},
		{Method: http.MethodPost, Brace: "/admin/organizations"},
	},
}
